package cn.ratopia.core.model;

import lombok.Data;
import java.time.Instant;


@Data
public class WsClient {
    /** WebSocket 原始 session 的 ID，用于映射 */
    private String sessionId;

    /** 客户端连接时携带的 token，用于身份校验 */
    private String token;

    /** token 过期时间，可用于服务器端自动断开连接 */
    private Instant expireTime;

    /** 最后一次心跳时间，用于检测连接存活性 */
    private Instant lastHeartBeat;

    /** 建立连接的时间 */
    private Instant connectTime = Instant.now();

    /** 客户端 IP */
    private String ip;

    /** 客户端端口（建议改为 int 类型，除非有特定需求） */
    private int port;

    /** 是否已通过鉴权 */
    private boolean isAuthorized;

    /** 登录用户信息（后续实现） */
    // private LoginUser user;
}

